#ifndef CONVERSORUNIDADES_H
#define CONVERSORUNIDADES_H

#include "visor2d_global.h"
#include <QRect>
#include <QPoint>

class VISOR2D_EXPORT ConversorUnidades
{
public:

    ConversorUnidades(const QRectF& encuadreReal, const QRect& encuadrePixeles);

    int dimensionXRealAPixeles(double dimensionXReal);
    int dimensionYRealAPixeles(double dimensionYReal);    

    int coordenadaXRealAPixeles(double xReal);
    int coordenadaYRealAPixeles(double yReal);

    QPoint puntoRealAPixeles(QPointF puntoReal);
    QRect rectanguloRealAPixeles(QRectF rectanguloReal);

    double dimensionXPixelesAReal(int dimensionXPixeles);
    double dimensionYPixelesAReal(int dimensionYPixeles);

    double coordenadaXPixelesAReal(int xPixeles);
    double coordenadaYPixelesAReal(int yPixeles);

    QPointF puntoPixelesAReal(QPoint puntoPixeles);
    QRectF rectanguloPixelesAReal(QRect retanguloPixeles);

private:
    QRectF encuadreReal;
    QRect encuadrePixeles;
};

#endif // CONVERSORUNIDADES_H
